%define NULL 0x0

global duplicarNodos

extern malloc

section .data

section .text

duplicarNodos:
	push ebp
	mov ebp, esp
	
	push ebx
	push esi
	push edi

	mov esi, [ebp+8] ;en esi tengo el puntero al primer nodo.

ciclo: 	
	cmp esi, NULL
	je fin
	
	push 8
	call malloc
	add esp, 4
	
	mov ecx, [esi]
	mov [eax], ecx
	mov ecx, [esi+4]
	mov [eax+4], ecx
	mov [esi+4], eax

	mov esi, ecx
	jmp ciclo
	
fin: 

	pop edi
	pop esi
	pop ebx

	pop ebp
	ret